package com.shujia.core

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

object Demo05Filter {
  def main(args: Array[String]): Unit = {
    /**
     * filter：转换算子，可以实现对RDD的数据进行过滤
     * 需要接受一个函数f，返回值类型必须是布尔类型
     * 如果返回的是true，则保留数据
     * 如果返回的是false，则过滤数据
     */

    // 基于students.txt数据，过滤出理科五班的所有学生
    val conf: SparkConf = new SparkConf()
    conf.setMaster("local")
    conf.setAppName("Demo05Filter")

    val sc: SparkContext = new SparkContext(conf)
    val stuRDD: RDD[String] = sc.textFile("spark/data/stu/students.txt")

    stuRDD.filter(stu => stu.split(",")(4) == "理科五班").foreach(println)

  }

}
